package com.example.myapplication.domain;

import com.google.gson.annotations.SerializedName;

import java.util.List;

public class launcherInfoItem {

    @SerializedName("code")
    private Integer code;
    @SerializedName("msg")
    private String msg;
    @SerializedName("data")
    private List<DataDTO> data;

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public List<DataDTO> getData() {
        return data;
    }

    public void setData(List<DataDTO> data) {
        this.data = data;
    }

    public static class DataDTO {
        @SerializedName("launcherId")
        private Integer launcherId;
        @SerializedName("launcherName")
        private String launcherName;
        @SerializedName("width")
        private Integer width;
        @SerializedName("height")
        private Integer height;
        @SerializedName("suitableGrade")
        private Integer suitableGrade;
        @SerializedName("gradeName")
        private String gradeName;
        @SerializedName("pageNum")
        private Integer pageNum;
        @SerializedName("nameType")
        private Integer nameType;
        @SerializedName("show_choose")
        private Integer showChoose;
        @SerializedName("launcherContent")
        private LauncherContentDTO launcherContent;
        @SerializedName("pageContent")
        private List<PageContentDTO> pageContent;

        public Integer getLauncherId() {
            return launcherId;
        }

        public void setLauncherId(Integer launcherId) {
            this.launcherId = launcherId;
        }

        public String getLauncherName() {
            return launcherName;
        }

        public void setLauncherName(String launcherName) {
            this.launcherName = launcherName;
        }

        public Integer getWidth() {
            return width;
        }

        public void setWidth(Integer width) {
            this.width = width;
        }

        public Integer getHeight() {
            return height;
        }

        public void setHeight(Integer height) {
            this.height = height;
        }

        public Integer getSuitableGrade() {
            return suitableGrade;
        }

        public void setSuitableGrade(Integer suitableGrade) {
            this.suitableGrade = suitableGrade;
        }

        public String getGradeName() {
            return gradeName;
        }

        public void setGradeName(String gradeName) {
            this.gradeName = gradeName;
        }

        public Integer getPageNum() {
            return pageNum;
        }

        public void setPageNum(Integer pageNum) {
            this.pageNum = pageNum;
        }

        public Integer getNameType() {
            return nameType;
        }

        public void setNameType(Integer nameType) {
            this.nameType = nameType;
        }

        public Integer getShowChoose() {
            return showChoose;
        }

        public void setShowChoose(Integer showChoose) {
            this.showChoose = showChoose;
        }

        public LauncherContentDTO getLauncherContent() {
            return launcherContent;
        }

        public void setLauncherContent(LauncherContentDTO launcherContent) {
            this.launcherContent = launcherContent;
        }

        public List<PageContentDTO> getPageContent() {
            return pageContent;
        }

        public void setPageContent(List<PageContentDTO> pageContent) {
            this.pageContent = pageContent;
        }

        public static class LauncherContentDTO {
            @SerializedName("screen")
            private ScreenDTO screen;
            @SerializedName("organ")
            private OrganDTO organ;
            @SerializedName("chooseButton")
            private ChooseButtonDTO chooseButton;
            @SerializedName("chooseInner")
            private ChooseInnerDTO chooseInner;
            @SerializedName("message")
            private MessageDTO message;
            @SerializedName("navigation")
            private NavigationDTO navigation;
            @SerializedName("retButton")
            private RetButtonDTO retButton;
            @SerializedName("refreshButton")
            private RefreshButtonDTO refreshButton;
            @SerializedName("eyesFunction")
            private EyesFunctionDTO eyesFunction;
            @SerializedName("color")
            private String color;
            @SerializedName("last_ip")
            private String lastIp;
            @SerializedName("userId")
            private String userId;
            @SerializedName("launcher_id")
            private Integer launcherId;
            @SerializedName("type")
            private Integer type;

            public ScreenDTO getScreen() {
                return screen;
            }

            public void setScreen(ScreenDTO screen) {
                this.screen = screen;
            }

            public OrganDTO getOrgan() {
                return organ;
            }

            public void setOrgan(OrganDTO organ) {
                this.organ = organ;
            }

            public ChooseButtonDTO getChooseButton() {
                return chooseButton;
            }

            public void setChooseButton(ChooseButtonDTO chooseButton) {
                this.chooseButton = chooseButton;
            }

            public ChooseInnerDTO getChooseInner() {
                return chooseInner;
            }

            public void setChooseInner(ChooseInnerDTO chooseInner) {
                this.chooseInner = chooseInner;
            }

            public MessageDTO getMessage() {
                return message;
            }

            public void setMessage(MessageDTO message) {
                this.message = message;
            }

            public NavigationDTO getNavigation() {
                return navigation;
            }

            public void setNavigation(NavigationDTO navigation) {
                this.navigation = navigation;
            }

            public RetButtonDTO getRetButton() {
                return retButton;
            }

            public void setRetButton(RetButtonDTO retButton) {
                this.retButton = retButton;
            }

            public RefreshButtonDTO getRefreshButton() {
                return refreshButton;
            }

            public void setRefreshButton(RefreshButtonDTO refreshButton) {
                this.refreshButton = refreshButton;
            }

            public EyesFunctionDTO getEyesFunction() {
                return eyesFunction;
            }

            public void setEyesFunction(EyesFunctionDTO eyesFunction) {
                this.eyesFunction = eyesFunction;
            }

            public String getColor() {
                return color;
            }

            public void setColor(String color) {
                this.color = color;
            }

            public String getLastIp() {
                return lastIp;
            }

            public void setLastIp(String lastIp) {
                this.lastIp = lastIp;
            }

            public String getUserId() {
                return userId;
            }

            public void setUserId(String userId) {
                this.userId = userId;
            }

            public Integer getLauncherId() {
                return launcherId;
            }

            public void setLauncherId(Integer launcherId) {
                this.launcherId = launcherId;
            }

            public Integer getType() {
                return type;
            }

            public void setType(Integer type) {
                this.type = type;
            }

            public static class ScreenDTO {
                @SerializedName("firstScreenImg")
                private String firstScreenImg;
                @SerializedName("secondScreenImg")
                private Object secondScreenImg;
                @SerializedName("lockScreenImg")
                private Object lockScreenImg;
                @SerializedName("width")
                private Integer width;
                @SerializedName("height")
                private Integer height;

                public String getFirstScreenImg() {
                    return firstScreenImg;
                }

                public void setFirstScreenImg(String firstScreenImg) {
                    this.firstScreenImg = firstScreenImg;
                }

                public Object getSecondScreenImg() {
                    return secondScreenImg;
                }

                public void setSecondScreenImg(Object secondScreenImg) {
                    this.secondScreenImg = secondScreenImg;
                }

                public Object getLockScreenImg() {
                    return lockScreenImg;
                }

                public void setLockScreenImg(Object lockScreenImg) {
                    this.lockScreenImg = lockScreenImg;
                }

                public Integer getWidth() {
                    return width;
                }

                public void setWidth(Integer width) {
                    this.width = width;
                }

                public Integer getHeight() {
                    return height;
                }

                public void setHeight(Integer height) {
                    this.height = height;
                }
            }

            public static class OrganDTO {
                @SerializedName("name")
                private String name;
                @SerializedName("img")
                private String img;
                @SerializedName("font")
                private Integer font;
                @SerializedName("fontSize")
                private Integer fontSize;
                @SerializedName("fontColor")
                private Object fontColor;
                @SerializedName("width")
                private Integer width;
                @SerializedName("height")
                private Integer height;
                @SerializedName("x")
                private Integer x;
                @SerializedName("y")
                private Integer y;
                @SerializedName("relationType")
                private Integer relationType;
                @SerializedName("relation")
                private Object relation;

                public String getName() {
                    return name;
                }

                public void setName(String name) {
                    this.name = name;
                }

                public String getImg() {
                    return img;
                }

                public void setImg(String img) {
                    this.img = img;
                }

                public Integer getFont() {
                    return font;
                }

                public void setFont(Integer font) {
                    this.font = font;
                }

                public Integer getFontSize() {
                    return fontSize;
                }

                public void setFontSize(Integer fontSize) {
                    this.fontSize = fontSize;
                }

                public Object getFontColor() {
                    return fontColor;
                }

                public void setFontColor(Object fontColor) {
                    this.fontColor = fontColor;
                }

                public Integer getWidth() {
                    return width;
                }

                public void setWidth(Integer width) {
                    this.width = width;
                }

                public Integer getHeight() {
                    return height;
                }

                public void setHeight(Integer height) {
                    this.height = height;
                }

                public Integer getX() {
                    return x;
                }

                public void setX(Integer x) {
                    this.x = x;
                }

                public Integer getY() {
                    return y;
                }

                public void setY(Integer y) {
                    this.y = y;
                }

                public Integer getRelationType() {
                    return relationType;
                }

                public void setRelationType(Integer relationType) {
                    this.relationType = relationType;
                }

                public Object getRelation() {
                    return relation;
                }

                public void setRelation(Object relation) {
                    this.relation = relation;
                }
            }

            public static class ChooseButtonDTO {
                @SerializedName("name")
                private String name;
                @SerializedName("img")
                private Object img;
                @SerializedName("font")
                private Integer font;
                @SerializedName("fontSize")
                private Integer fontSize;
                @SerializedName("fontColor")
                private Object fontColor;
                @SerializedName("width")
                private Integer width;
                @SerializedName("height")
                private Integer height;
                @SerializedName("buttonColor")
                private Object buttonColor;
                @SerializedName("transparency")
                private Integer transparency;
                @SerializedName("x")
                private Integer x;
                @SerializedName("y")
                private Integer y;

                public String getName() {
                    return name;
                }

                public void setName(String name) {
                    this.name = name;
                }

                public Object getImg() {
                    return img;
                }

                public void setImg(Object img) {
                    this.img = img;
                }

                public Integer getFont() {
                    return font;
                }

                public void setFont(Integer font) {
                    this.font = font;
                }

                public Integer getFontSize() {
                    return fontSize;
                }

                public void setFontSize(Integer fontSize) {
                    this.fontSize = fontSize;
                }

                public Object getFontColor() {
                    return fontColor;
                }

                public void setFontColor(Object fontColor) {
                    this.fontColor = fontColor;
                }

                public Integer getWidth() {
                    return width;
                }

                public void setWidth(Integer width) {
                    this.width = width;
                }

                public Integer getHeight() {
                    return height;
                }

                public void setHeight(Integer height) {
                    this.height = height;
                }

                public Object getButtonColor() {
                    return buttonColor;
                }

                public void setButtonColor(Object buttonColor) {
                    this.buttonColor = buttonColor;
                }

                public Integer getTransparency() {
                    return transparency;
                }

                public void setTransparency(Integer transparency) {
                    this.transparency = transparency;
                }

                public Integer getX() {
                    return x;
                }

                public void setX(Integer x) {
                    this.x = x;
                }

                public Integer getY() {
                    return y;
                }

                public void setY(Integer y) {
                    this.y = y;
                }
            }

            public static class ChooseInnerDTO {
                @SerializedName("name")
                private String name;
                @SerializedName("font")
                private Integer font;
                @SerializedName("fontSize")
                private Integer fontSize;
                @SerializedName("fontColor")
                private Object fontColor;
                @SerializedName("width")
                private Integer width;
                @SerializedName("height")
                private Integer height;
                @SerializedName("img")
                private Object img;
                @SerializedName("x")
                private Integer x;
                @SerializedName("y")
                private Integer y;

                public String getName() {
                    return name;
                }

                public void setName(String name) {
                    this.name = name;
                }

                public Integer getFont() {
                    return font;
                }

                public void setFont(Integer font) {
                    this.font = font;
                }

                public Integer getFontSize() {
                    return fontSize;
                }

                public void setFontSize(Integer fontSize) {
                    this.fontSize = fontSize;
                }

                public Object getFontColor() {
                    return fontColor;
                }

                public void setFontColor(Object fontColor) {
                    this.fontColor = fontColor;
                }

                public Integer getWidth() {
                    return width;
                }

                public void setWidth(Integer width) {
                    this.width = width;
                }

                public Integer getHeight() {
                    return height;
                }

                public void setHeight(Integer height) {
                    this.height = height;
                }

                public Object getImg() {
                    return img;
                }

                public void setImg(Object img) {
                    this.img = img;
                }

                public Integer getX() {
                    return x;
                }

                public void setX(Integer x) {
                    this.x = x;
                }

                public Integer getY() {
                    return y;
                }

                public void setY(Integer y) {
                    this.y = y;
                }
            }

            public static class MessageDTO {
                @SerializedName("name")
                private String name;
                @SerializedName("img")
                private Object img;
                @SerializedName("font")
                private Integer font;
                @SerializedName("fontSize")
                private Integer fontSize;
                @SerializedName("fontColor")
                private Object fontColor;
                @SerializedName("backColor")
                private Object backColor;
                @SerializedName("width")
                private Integer width;
                @SerializedName("height")
                private Integer height;
                @SerializedName("x")
                private Integer x;
                @SerializedName("y")
                private Integer y;

                public String getName() {
                    return name;
                }

                public void setName(String name) {
                    this.name = name;
                }

                public Object getImg() {
                    return img;
                }

                public void setImg(Object img) {
                    this.img = img;
                }

                public Integer getFont() {
                    return font;
                }

                public void setFont(Integer font) {
                    this.font = font;
                }

                public Integer getFontSize() {
                    return fontSize;
                }

                public void setFontSize(Integer fontSize) {
                    this.fontSize = fontSize;
                }

                public Object getFontColor() {
                    return fontColor;
                }

                public void setFontColor(Object fontColor) {
                    this.fontColor = fontColor;
                }

                public Object getBackColor() {
                    return backColor;
                }

                public void setBackColor(Object backColor) {
                    this.backColor = backColor;
                }

                public Integer getWidth() {
                    return width;
                }

                public void setWidth(Integer width) {
                    this.width = width;
                }

                public Integer getHeight() {
                    return height;
                }

                public void setHeight(Integer height) {
                    this.height = height;
                }

                public Integer getX() {
                    return x;
                }

                public void setX(Integer x) {
                    this.x = x;
                }

                public Integer getY() {
                    return y;
                }

                public void setY(Integer y) {
                    this.y = y;
                }
            }

            public static class NavigationDTO {
                @SerializedName("type")
                private String type;
                @SerializedName("width")
                private Integer width;
                @SerializedName("height")
                private Integer height;
                @SerializedName("x")
                private Integer x;
                @SerializedName("y")
                private Integer y;
                @SerializedName("name")
                private String name;
                @SerializedName("noChooseImg")
                private Object noChooseImg;
                @SerializedName("chooseImg")
                private Object chooseImg;
                @SerializedName("noChooseTabColor")
                private Object noChooseTabColor;
                @SerializedName("chooseTabColor")
                private Object chooseTabColor;
                @SerializedName("fontSize")
                private Integer fontSize;
                @SerializedName("fontColor")
                private Object fontColor;
                @SerializedName("fastImgWidth")
                private Integer fastImgWidth;
                @SerializedName("fastImgHeight")
                private Integer fastImgHeight;
                @SerializedName("fastAppArr")
                private List<?> fastAppArr;

                public String getType() {
                    return type;
                }

                public void setType(String type) {
                    this.type = type;
                }

                public Integer getWidth() {
                    return width;
                }

                public void setWidth(Integer width) {
                    this.width = width;
                }

                public Integer getHeight() {
                    return height;
                }

                public void setHeight(Integer height) {
                    this.height = height;
                }

                public Integer getX() {
                    return x;
                }

                public void setX(Integer x) {
                    this.x = x;
                }

                public Integer getY() {
                    return y;
                }

                public void setY(Integer y) {
                    this.y = y;
                }

                public String getName() {
                    return name;
                }

                public void setName(String name) {
                    this.name = name;
                }

                public Object getNoChooseImg() {
                    return noChooseImg;
                }

                public void setNoChooseImg(Object noChooseImg) {
                    this.noChooseImg = noChooseImg;
                }

                public Object getChooseImg() {
                    return chooseImg;
                }

                public void setChooseImg(Object chooseImg) {
                    this.chooseImg = chooseImg;
                }

                public Object getNoChooseTabColor() {
                    return noChooseTabColor;
                }

                public void setNoChooseTabColor(Object noChooseTabColor) {
                    this.noChooseTabColor = noChooseTabColor;
                }

                public Object getChooseTabColor() {
                    return chooseTabColor;
                }

                public void setChooseTabColor(Object chooseTabColor) {
                    this.chooseTabColor = chooseTabColor;
                }

                public Integer getFontSize() {
                    return fontSize;
                }

                public void setFontSize(Integer fontSize) {
                    this.fontSize = fontSize;
                }

                public Object getFontColor() {
                    return fontColor;
                }

                public void setFontColor(Object fontColor) {
                    this.fontColor = fontColor;
                }

                public Integer getFastImgWidth() {
                    return fastImgWidth;
                }

                public void setFastImgWidth(Integer fastImgWidth) {
                    this.fastImgWidth = fastImgWidth;
                }

                public Integer getFastImgHeight() {
                    return fastImgHeight;
                }

                public void setFastImgHeight(Integer fastImgHeight) {
                    this.fastImgHeight = fastImgHeight;
                }

                public List<?> getFastAppArr() {
                    return fastAppArr;
                }

                public void setFastAppArr(List<?> fastAppArr) {
                    this.fastAppArr = fastAppArr;
                }
            }

            public static class RetButtonDTO {
                @SerializedName("width")
                private Integer width;
                @SerializedName("height")
                private Integer height;
                @SerializedName("x")
                private Integer x;
                @SerializedName("y")
                private Integer y;
                @SerializedName("img")
                private String img;
                @SerializedName("name")
                private String name;

                public Integer getWidth() {
                    return width;
                }

                public void setWidth(Integer width) {
                    this.width = width;
                }

                public Integer getHeight() {
                    return height;
                }

                public void setHeight(Integer height) {
                    this.height = height;
                }

                public Integer getX() {
                    return x;
                }

                public void setX(Integer x) {
                    this.x = x;
                }

                public Integer getY() {
                    return y;
                }

                public void setY(Integer y) {
                    this.y = y;
                }

                public String getImg() {
                    return img;
                }

                public void setImg(String img) {
                    this.img = img;
                }

                public String getName() {
                    return name;
                }

                public void setName(String name) {
                    this.name = name;
                }
            }

            public static class RefreshButtonDTO {
                @SerializedName("width")
                private Integer width;
                @SerializedName("height")
                private Integer height;
                @SerializedName("x")
                private Integer x;
                @SerializedName("y")
                private Integer y;
                @SerializedName("img")
                private String img;
                @SerializedName("name")
                private String name;

                public Integer getWidth() {
                    return width;
                }

                public void setWidth(Integer width) {
                    this.width = width;
                }

                public Integer getHeight() {
                    return height;
                }

                public void setHeight(Integer height) {
                    this.height = height;
                }

                public Integer getX() {
                    return x;
                }

                public void setX(Integer x) {
                    this.x = x;
                }

                public Integer getY() {
                    return y;
                }

                public void setY(Integer y) {
                    this.y = y;
                }

                public String getImg() {
                    return img;
                }

                public void setImg(String img) {
                    this.img = img;
                }

                public String getName() {
                    return name;
                }

                public void setName(String name) {
                    this.name = name;
                }
            }

            public static class EyesFunctionDTO {
                @SerializedName("width")
                private Integer width;
                @SerializedName("height")
                private Integer height;
                @SerializedName("x")
                private Integer x;
                @SerializedName("y")
                private Integer y;
                @SerializedName("img")
                private Object img;
                @SerializedName("name")
                private String name;

                public Integer getWidth() {
                    return width;
                }

                public void setWidth(Integer width) {
                    this.width = width;
                }

                public Integer getHeight() {
                    return height;
                }

                public void setHeight(Integer height) {
                    this.height = height;
                }

                public Integer getX() {
                    return x;
                }

                public void setX(Integer x) {
                    this.x = x;
                }

                public Integer getY() {
                    return y;
                }

                public void setY(Integer y) {
                    this.y = y;
                }

                public Object getImg() {
                    return img;
                }

                public void setImg(Object img) {
                    this.img = img;
                }

                public String getName() {
                    return name;
                }

                public void setName(String name) {
                    this.name = name;
                }
            }
        }

        public static class PageContentDTO {
            @SerializedName("title")
            private Object title;
            @SerializedName("customBg")
            private String customBg;
            @SerializedName("iconLinkList")
            private List<IconLinkListDTO> iconLinkList;
            @SerializedName("launcher_id")
            private Integer launcherId;

            public Object getTitle() {
                return title;
            }

            public void setTitle(Object title) {
                this.title = title;
            }

            public String getCustomBg() {
                return customBg;
            }

            public void setCustomBg(String customBg) {
                this.customBg = customBg;
            }

            public List<IconLinkListDTO> getIconLinkList() {
                return iconLinkList;
            }

            public void setIconLinkList(List<IconLinkListDTO> iconLinkList) {
                this.iconLinkList = iconLinkList;
            }

            public Integer getLauncherId() {
                return launcherId;
            }

            public void setLauncherId(Integer launcherId) {
                this.launcherId = launcherId;
            }

            public static class IconLinkListDTO {
                @SerializedName("start_x")
                private Integer startX;
                @SerializedName("start_y")
                private Integer startY;
                @SerializedName("width")
                private Integer width;
                @SerializedName("height")
                private Integer height;
                @SerializedName("name")
                private String name;
                @SerializedName("type")
                private Integer type;
                @SerializedName("packageName")
                private String packageName;
                @SerializedName("surfaceName")
                private Object surfaceName;
                @SerializedName("packageUrl")
                private String packageUrl;
                @SerializedName("scheme")
                private Object scheme;
                @SerializedName("action")
                private Object action;
                @SerializedName("app_id")
                private Integer appId;
                @SerializedName("jump_type")
                private Integer jumpType;
                @SerializedName("params")
                private ParamsDTO params;
                @SerializedName("activity")
                private String activity;

                public Integer getStartX() {
                    return startX;
                }

                public void setStartX(Integer startX) {
                    this.startX = startX;
                }

                public Integer getStartY() {
                    return startY;
                }

                public void setStartY(Integer startY) {
                    this.startY = startY;
                }

                public Integer getWidth() {
                    return width;
                }

                public void setWidth(Integer width) {
                    this.width = width;
                }

                public Integer getHeight() {
                    return height;
                }

                public void setHeight(Integer height) {
                    this.height = height;
                }

                public String getName() {
                    return name;
                }

                public void setName(String name) {
                    this.name = name;
                }

                public Integer getType() {
                    return type;
                }

                public void setType(Integer type) {
                    this.type = type;
                }

                public String getPackageName() {
                    return packageName;
                }

                public void setPackageName(String packageName) {
                    this.packageName = packageName;
                }

                public Object getSurfaceName() {
                    return surfaceName;
                }

                public void setSurfaceName(Object surfaceName) {
                    this.surfaceName = surfaceName;
                }

                public String getPackageUrl() {
                    return packageUrl;
                }

                public void setPackageUrl(String packageUrl) {
                    this.packageUrl = packageUrl;
                }

                public Object getScheme() {
                    return scheme;
                }

                public void setScheme(Object scheme) {
                    this.scheme = scheme;
                }

                public Object getAction() {
                    return action;
                }

                public void setAction(Object action) {
                    this.action = action;
                }

                public Integer getAppId() {
                    return appId;
                }

                public void setAppId(Integer appId) {
                    this.appId = appId;
                }

                public Integer getJumpType() {
                    return jumpType;
                }

                public void setJumpType(Integer jumpType) {
                    this.jumpType = jumpType;
                }

                public ParamsDTO getParams() {
                    return params;
                }

                public void setParams(ParamsDTO params) {
                    this.params = params;
                }

                public String getActivity() {
                    return activity;
                }

                public void setActivity(String activity) {
                    this.activity = activity;
                }

                public static class ParamsDTO {
                    @SerializedName("StartArgs")
                    private String startArgs;
                    @SerializedName("url")
                    private String url;

                    public String getStartArgs() {
                        return startArgs;
                    }

                    public void setStartArgs(String startArgs) {
                        this.startArgs = startArgs;
                    }

                    public String getUrl() {
                        return url;
                    }

                    public void setUrl(String url) {
                        this.url = url;
                    }
                }
            }
        }
    }
}
